import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'

import VueSetupExtend from 'vite-plugin-vue-setup-extend'
// 引入svg需要用到插件
import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
// https://vitejs.dev/config/
export default defineConfig((command, mode) => {
  // loadEnv(当前所处的开发环境, 环境文件的父级路径)
  // process.cwd()：就是项目根目录的路径
  let env = loadEnv(mode, process.cwd())
  return {
    plugins: [vue(),
    VueSetupExtend(),
    createSvgIconsPlugin({
      // Specify the icon folder to be 
      iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')],
      // Specify symbolId format
      symbolId: 'icon-[dir]-[name]'
    })],
    resolve: {
      alias: {
        "@": path.resolve('./src')//相对路径别名配置，使用 @ 代替 src
      }
    },
    //scss全局变量的配置
    css: {
      preprocessorOptions: {
        scss: {
          javascriptEnabled: true,
          additionalData: '@import "./src/styles/variable.scss";'
        }
      }
    },
    // server: {
    //   proxy: {
    //     '/api': {
    //       //目标地址
    //       target: 'http://139.198.104.58:8212',
    //       changeOrigin: true,
    //       rewrite: (path) => path.replace(/^\/api/, '')
    //     }
    //   }
    // }

    server: {
      proxy: {

        // "/api/admin/acl": { // 更新代理规则以匹配新的路径
        //   target: "http://139.198.104.58:8212", // 目标后端服务
        //   target: "http://sph-api.atguigu.cn/prod-api",
        //   changeOrigin: true,
        //   rewrite: (path) => path.replace(/^\/api/, ''),
        // },
        "/api": {
          //获取数据的服务器地址设置
          // target: "http://39.98.123.211:8510",
          target:"http://sph-api.atguigu.cn",

          //需要代理跨域
          changeOrigin: true,
          //路径重写
          rewrite: (path) => path.replace(/^\/api/, ''),
        }
      }
    },
    build: {
      sourcemap: true, // 生成source map，便于调试
      // 为了更好的调试体验，可以包含优化的调试信息
      rollupOptions: {
        output: {
          inlineDynamicImports: true,
        },
      },
    },
  }
})
